import request from "@/api/request.js";
import { encryptByAES } from "@/utils/cryptoUtils.js";

// 查询直播列表
export function listLive(query) {
  return request({
    url: '/live/list',
    method: 'get',
    params: query
  })
}

// 查询直播详细
export function getLive(id) {
  return request({
    url: `/live/` + id,
    method: 'get'
  })
}

// 新增直播
export function addLive(data) {
  return request({
    url: '/live',
    method: 'post',
    data: data
  })
}

// 修改直播
export function updateLive(data) {
  return request({
    url: '/live',
    method: 'put',
    data: data
  })
}

// 删除直播
export function delLive(id) {
  return request({
    url: '/live/' + id,
    method: 'delete'
  })
}

// 控制直播
export function controlLive(id, status) {
  return request({
    url: '/live/control/'+id+'/'+status,
    method: 'post'
  })
}

// 设置直播
export function settingLive(data) {
  return request({
    url: '/live/setting',
    method: 'post',
    data: data
  })
}

// 统计直播
export function statLive(id) {
  return request({
    url: '/live/stat/' + id,
    method: 'get'
  })
}

// 更新直播观看次数
export function updateViewCount(data) {
  // 加密请求参数
  data = encryptByAES(JSON.stringify(data));
  return request({
    url: '/live/updateViewCount',
    method: 'post',
    data: data
  })
}

// 查看直播回放
export function getLiveReplay(id) {
  return request({
    url: '/live/getLiveReplay/'+id,
    method: 'get'
  })
}

// 获得直播布局
export function getLiveLayout(id) {
  return request({
    url: '/live/getLayout/' + id,
    method: 'get'
  })
}

// 切换直播布局
export function changeLiveLayout(data) {
  return request({
    url: '/live/changeLayout',
    method: 'post',
    data: data
  })
}
